package com.testsigma.automator.constants;

import java.util.Arrays;
import java.util.List;

public class ErrorCodes {
  public final static Integer ILLEGAL_ACCESS = 1;
  public final static Integer INVALID_ARGUMENT = 2;
  public final static Integer INVOCATION_TARGET = 3;
  public final static Integer INVALID_METHOD = 4;
  public final static Integer INVALID_CREDENTIALS = 5;
  public final static Integer UNKNOWN_PROBLEM = 6;
  public final static Integer UNKNOWN_ERROR = 100;
  public static Integer UNKNOWN_BROWSER = 2000;
  public static Integer ALL_WINDOWS_NOT_CLOSED = 2001;
  public static Integer BROWSER_CLOSED = 2002;
  public static Integer USER_STOPPED_EXECUTION = 2003;
  public static Integer DRIVER_NOT_CREATED = 2004;
  public static Integer INVALID_ELEMENT = 2005;
  public static Integer EMPTY_ELEMENT = 2006;
  public static Integer INVALID_ATTRIBUTE = 2007;
  public static Integer INVALID_PARAMETER_FORMAT = 2008;
  public static Integer INVALID_TESTDATA = 2009;
  public static Integer ELEMENT_CHANGED = 2010;
  public static Integer INVALID_CLASS = 2011;
  public static Integer INVALID_LIB = 2012;
  public static Integer UNSUPPORTED_BROWSER_VERSION = 2013;
  public static Integer DEVICE_NOT_FOUND = 2014;
  public static Integer UNLIMITED_AUTOMATION_BROWSERS = 27;
  public static Integer UNLIMITED_AUTOMATION_DEVICES = 26;
  public static Integer MOBILE_AUTOMATION = 13;
  public static Integer REST_AUTOMATION = 25;

  public static Integer ERROR_MINS_VALIDATION_FAILURE = 100;
  public static Integer ERROR_ENVIRONMENT_PARAM_FAILURE = 101;
  public static Integer ERROR_TEST_DATA_SET_FAILURE = 102;
  public static Integer ERROR_TEST_DATA_FAILURE = 103;
  public static Integer ERROR_ELEMENT_FAILURE = 104;
  public static Integer BROWSER_VERSION_NOT_AVAILABLE = 109;
  public static Integer NO_PARALLEL_RUN = 110;
  public static Integer TEST_CASE_DETAILS_FETCH_FAILED = 200;

  public static Integer WDA_INSTALLATION_FAILED = 300;

  public static List<Integer> elementFailedList = Arrays.asList(53201, 52001, 52101, 11206, 11201, 10901, 11001, 11101, 11103, 11301, 11401, 10001,
    10101, 10201, 11501, 11601, 11701, 10301, 10401, 10501, 10601, 11801, 11901, 60701, 12001, 12019, 60002, 60101, 60302, 60402, 60502,
    25901, 26101, 20001, 20101, 20201, 20301, 20401, 20501, 20601, 26201, 26301, 26401, 26501, 20701, 20801, 20901, 21001, 21101, 21201, 21401,
    21501, 21601, 21701, 21801, 21901, 22001, 22101, 22201, 22301, 22401, 22501, 22601, 22701, 22801, 22901, 23001, 23101, 24101,
    23201, 23301, 26601, 26701, 80001, 80101, 80201, 80302, 80402, 80602, 80702, 170001, 150501, 140001, 140101, 140201, 200001,
    200102, 180001, 180201, 180301, 180401, 180501, 180601, 180701, 180801, 181001, 181101, 181201, 181301, 181302, 181401, 181501, 181601, 181701
    , 181801, 181901, 182001, 182101, 182201, 182301, 182401, 183001, 183401, 183501, 183601, 183701, 183801, 183901, 184001, 184101, 184501, 184601, 184701,
    184801, 184901, 185001, 185101, 185201, 185301, 185501, 185601, 185701, 185801, 185901, 186001, 186101, 186201, 186301, 186401, 186501, 186601, 186701,
    186801, 186901, 187001, 42202, 40001, 40009, 40101, 40111, 40201, 40211, 40301, 40312, 40401, 40412, 40501, 40512, 40602, 40702, 40802, 40902, 41002, 41102,
    41202, 41302, 41402, 41502, 41602, 41702, 41802, 41902, 42002, 50001, 50101, 50201, 50301, 50401, 50501, 50601, 50701, 50801, 50901, 51001, 51101, 51201, 51301,
    51401, 51501, 33501, 30001, 30101, 30201, 30301, 30401, 30501, 30601, 30701, 30801, 30901, 31001, 31101, 31201, 31301, 31401, 31501, 31601, 31701, 31801, 31801,
    31901, 32001, 32101, 32201, 32301, 32401, 32501, 32601, 32701, 32801, 32901, 33001, 33101, 33201, 33301, 33401, 33601, 25601, 25501, 25401, 25201, 25301,
    25101, 25001, 24901, 24801, 24201, 26901, 26801, 23401, 23501, 23601, 23701, 23801, 23901, 120001, 110001, 100001, 100101, 500001, 500301, 510001, 520001,
    500201, 540001, 550001, 550106, 560001, 500101, 570001, 570101, 570201, 570301, 580001, 560101, 560201, 550201, 560301, 560401, 560501, 590001, 570401, 580101,
    580201, 580301, 580401, 570801, 1010100, 1020200, 1020300, 1030000, 1030100, 1030200, 1030300, 1010000);
}
